projects
/
xen.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
d5a22fa
)
shadow: Fix TLB flushing in the second pass of sh_prealloc() in the
author
Keir Fraser
<keir.fraser@citrix.com>
Fri, 25 Apr 2008 12:27:19 +0000
(13:27 +0100)
committer
Keir Fraser
<keir.fraser@citrix.com>
Fri, 25 Apr 2008 12:27:19 +0000
(13:27 +0100)
case where multiple vcpus use the same pagetables.
Signed-off-by: Tim Deegan <Tim.Deegan@citrix.com>
xen/arch/x86/mm/shadow/common.c
patch
|
blob
|
history
diff --git
a/xen/arch/x86/mm/shadow/common.c
b/xen/arch/x86/mm/shadow/common.c
index 1280ef695b69c5b43d5f7248acadc033c145c552..3769721198694f8c95bdb7f1dd8afb74069d48d3 100644
(file)
--- a/
xen/arch/x86/mm/shadow/common.c
+++ b/
xen/arch/x86/mm/shadow/common.c
@@
-781,7
+781,6
@@
static void _shadow_prealloc(
struct vcpu *v, *v2;
struct list_head *l, *t;
struct shadow_page_info *sp;
- cpumask_t flushmask = CPU_MASK_NONE;
mfn_t smfn;
int i;
@@
-819,12
+818,11
@@
static void _shadow_prealloc(
{
shadow_unhook_mappings(v,
pagetable_get_mfn(v2->arch.shadow_table[i]));
- cpus_or(flushmask, v2->vcpu_dirty_cpumask, flushmask);
/* See if that freed up enough space */
if ( space_is_available(d, order, count) )
{
- flush_tlb_mask(
flush
mask);
+ flush_tlb_mask(
d->domain_dirty_cpu
mask);
return;
}
}